Ubiquitous remote access to services, application programs and data has become commonplace as a result of the growth and availability of broadband and wireless network access. However, there exist application programs that were not designed for remote network access over, e.g., the Internet. These application programs range from older, mainframe applications that have been traditionally accessed by terminals to single user applications designed to be executed on a local computing device. Further, such applications were not designed to be executed on the variety of computing devices that exist today. For example, many applications are developed to be executed on a specific computing architecture, making it impossible for them to be used by smart phones, tablet devices, etc.
In addition, there has been a push toward a cloud computing model, i.e., providing applications and data as “services” over a network. Cloud computing has several benefits in that services may be provided quickly and easily, as computing resources can be dedicated and removed based on needs. In the cloud computing model, end-users access “cloud-based” applications through, e.g., a web browser or other light-weight desktop or mobile app, where the applications may be any type of application and/or data executed and/or are stored on a remote server. The goal of cloud computing is provide end-users an experience as if the applications and data were installed and accessed locally on an end-user computing device.
However, while there are many benefits to providing remote access to applications, there exist features of applications, such as multi-channel audio, which cannot be remotely provided to end-users in certain remote access environments.